Introduction: This analysis performs a gene-gene clustering procedure that will identify clusters of co-expressed genes across multiple sample groups. It first runs an ANOVA to find genes significantly changed across sample groups and uses these genes as seeds to initiate a number of gene clusters. These clusters will be further refined based on several user-specific paramters. Gene set enrichment analysis is then used to find pre-defined gene sets that are over-represented in each cluster.

  • Selection of differentially expressed gene: ANOVA is used to get each gene a p value for its differential expression across sample groups and false discovery rates are calculated using the p values. Afterwards, genes are filtered sequentially by their FDR, p value, and range until the number of remaining genes is smaller than a given minimal number.
  • Gene clustering analysis: Remaining genes from the last step are used as seeds for the hclust{stat} function to generate a hierchical clustering tree; the tree is cut at a given height to get initial clusters; the cutting height will be lowered if the number of clusters is less than the number of sample groups; the initial clusters are filtered to remove small clusters, and refined to remove outlier genes; initial clusters close to each other are merged; and finally, the clusters are refined through multiple rounds of re-clustering while including genes with less significant ANOVA p values.
  • Gene set enrichment analysis: Hypergeometric test is used to find predefined gene sets over-represented in each gene cluster. A collection of gene sets obtained from different sources are available for a few model species and can be found at
    https://github.com/zhezhangsh/RoCA/tree/master/data.

 

Go to project home

1 Description

1.1 Project

Comparison between cell lines from 9 different cancer tissues (NCI-60); GSE5949

1.2 PubMed

Reinhold WC, Reimers MA, Lorenzi P, Ho J et al. Multifactorial regulation of E-cadherin expression: an integrative study. Mol Cancer Ther 2010 Jan;9(1):1-16. PMID: 20053763.

1.3 Experimental design

Comparison between cell lines from 9 different cancer tissue of origin types (Breast, Central Nervous System, Colon, Leukemia, Melanoma, Non-Small Cell Lung, Ovarian, Prostate, Renal) from NCI-60 panel

1.4 Analysis

Cluster genes co-expressed acroo 9 tissues/organs As a demonstration, only a subset of genes in the original data with high between sample variance were used.

1.5 Data and samples

  • There are 3105 total genes
  • There are 60 total samples
  • There are Breast, CNS, Colon, Blood, Skin, Lung, Ovary, Prostate, Kidney sample groups

The input data matrix was normalized so each gene had mean of 0 and SD of 1.0

plot of chunk pca
Figure 1. Principal components analysis (PCA) using all genes. Samples were colored by their groups.

2 Analysis and results

2.1 Gene-level summary statistics and ANOVA

Summary statistics and ANOVA p value across all sample groups were calculated for each gene.

plot of chunk anova_pvalue
Figure 2. Distribution of ANOVA p values. 1481 genes have p values less than 0.01.

2.2 Identification of gene clusters

2.2.1 Selection of differentially expressed genes

Differentially expressed genes (DEGs) were selected as seeds for generating gene clusters, using the following criteria:

  • Select genes with FDR less than 0.1
  • Stop if less than 200 genes were left; otherwise, select those with ANOVA p values less than 0.01
  • Stop if less than 200 genes were left; otherwise, select those with range (max-min) greater than 1
  • If there are still more than 1000 genes left, select the top 1000 with the biggest ranges

A total of 1000 genes were selected. These genes would be used as seeds to generate gene clusters in the next step.

plot of chunk hierarchical_clustering
Figure 3. Hierarchical clustering of samples using all genes (unsupervised) or selected DEGs (supervised).

2.2.2 Idetnfication of gene clusters

Gene clusters were identified from the DEG seeds with the following steps:

  • Create a hierchical tree based on gene-gene correlation
  • Cut the tree at height 1.2, which will classify genes into clusters. Then apply the following steps to refine the clusters
  • Calculate correlation of each gene to the centroid (median) of its cluster. Remove the genes if the correlation is less than 0.6
  • Remove clusters with size less than 20% of the expected size (the expected size is 50 if there are 500 genes and 10 clusters)
  • If there are less than 9 (the number of sample groups) clusters left, reduce the height cutoff by 0.05 and repeat this step until there are enough clusters
  • Merge the 2 most similar clusters if the correlation of their centroids is greater than or equal to 0.6. Repeat this step until no 2 clusters are that similar

10 gene clusters of 525 genes were identified from 1000 seed DEGs.

plot of chunk plot_cluster_mean
Figure 4. Color of each block corresponds to the average expression (normalized) of each initial gene cluster in each sample (red = higher).

2.2.3 Refinement of gene clusters

The gene clusters identified from the DEG seeds were further refined with the following steps:

  • Select all 1481 genes with p values less than 0.01 to continue
  • Assign selected genes to clusters:
  • Calculate centroid (median expression level of all genes in the cluster) of each cluster
  • Calculate correlation coefficient of each gene to centroid of each cluster to get a 1481 X 9 matrix
  • Assign a gene to a cluster if its correlation coefficient to the cluster is greater than 0.6, and the correlation coefficient to any other cluster is at least 0.1 less
  • Repeat this reclustering steps for 20 times unless the reclustering converged
  • Finally, remove clusters with number of genes less than 10.5

The reclustering converged after 7 cycles

A total of 533 genes were clustered after refinement.

plot of chunk plot_recluster_mean
Figure 5. Color of each block corresponds to the average expression (normalized) of each refined gene cluster in each sample (red = higher).

More info:

2.3 Analysis of individual clusters

2.3.1 Summary statistics and visualization of individual clusters

Table 1 Summary of individual clusters, with the average expression (normalized) of all genes of each cluster in all sample groups. Click on cluster name for visualization of each cluster: 1). the average and standard error of sample averages in each group; 2). hierarchical sample clustering using all genes of the cluster; and 3). heatmap of all genes and samples of the cluster.
Cluster Num_Gene Mean_Breast Mean_CNS Mean_Colon Mean_Blood Mean_Skin Mean_Lung Mean_Ovary Mean_Prostate Mean_Kidney
Cluster_1 24 0.430 1.7071 -0.6095 -0.4794 -0.3584 -0.027 -0.240 -0.2200 0.0853
Cluster_2 82 -0.017 -0.5071 1.6785 -0.3899 -0.4641 -0.062 0.097 0.0770 -0.2399
Cluster_3 57 -0.160 -0.2906 -0.1920 2.0391 -0.1890 -0.250 -0.230 -0.3100 -0.2475
Cluster_4 16 -0.370 -0.5177 1.1083 1.0814 -0.3114 -0.200 -0.200 -0.2300 -0.3166
Cluster_5 24 -0.190 -0.1019 0.4968 1.2466 -0.7612 -0.140 0.150 -0.2000 -0.1535
Cluster_6 47 -0.067 0.3230 0.0223 -1.8258 0.1561 0.300 0.230 0.1500 0.3767
Cluster_7 156 -0.310 -0.1729 -0.2899 -0.2985 1.4933 -0.300 -0.370 -0.2900 -0.3311
Cluster_8 97 0.260 0.6147 -0.7912 -0.9946 -0.3664 0.190 0.310 0.0076 0.7872
Cluster_9 30 -0.310 -0.2642 -0.3230 -0.5247 -0.3492 -0.160 0.270 -0.2400 1.5013

2.3.2 Gene set enrichment analysis

Find predefined gene sets enriched in gene cluster comparing to the background.

Table 2 Numbers of predefined gene sets significantly enriched in each gene cluster. Gene sets were split based on their sources, such as the NCBI BioSystems and KEGG databases. Click on each number to see list of the gene sets.
BioSystems KEGG MSigDb PubTator
Cluster_1 90 2 215 6
Cluster_2 160 8 218 23
Cluster_3 305 16 383 12
Cluster_4 75 5 112 1
Cluster_5 178 9 387 2
Cluster_6 292 14 364 4
Cluster_7 119 5 183 3
Cluster_8 363 12 489 63
Cluster_9 60 1 87 0

2.4 More plots

plot of chunk plot_series
Figure 6. Plot the patterns of all clusters using the mean and standard error of samples of each group.

 

plot of chunk plot_means
Figure 7. Color represents the average expression (normalized across samples) of all genes in the same cluster and all samples in the same group (red = higher).

 

plot of chunk plot_group_means
Figure 8. Color represents the average expression (normalized across samples) of individual genes in all samples of the same group (red = higher).

 

plot of chunk plot_heatmap
Figure 9. Color represents the expression level (normalized across samples) of each gene and each sample (red = higher).

 

plot of chunk plot_recluster_size
Figure 10. Color represents the size of each cluster (number of genes) after a reclustering cycle.

END OF DOCUMENT